package com.jy.modules.cims.data.dao;

import java.util.List;
import java.util.Map;

import com.jy.modules.cims.data.common.dto.TCMmImgurlDTO;
import com.jy.modules.cims.data.dto.ImgurlDto;
import com.jy.modules.cims.data.dto.PlcImagesDto;
import com.jy.platform.core.mybatis.MyBatisRepository;
/**
 * @classname: ImgurlDao
 * @description: 定义  该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号 持久层 接口
 * 通过@MapperScannerConfigurer扫描目录中的所有接口, 动态在Spring Context中生成实现.
 * 方法名称必须与Mapper.xml中保持一致.
 * @author:  zhiqiang
 */
@MyBatisRepository
public interface ImgurlDao {
    
    /**
     * @author zhiqiang
     * @description: 分页查询该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param searchParams
     * @return
     */
    public List<ImgurlDto> searchImgurlByPaging(Map<String, Object> searchParams) ;
    
    
    /**
     * @author shengzhoutao
     * @description: 查询上传的影像文件
     * @date 2015-01-07 16:22:50
     * @param searchUploadImgurl
     * @return
     */
    public List<ImgurlDto> searchUploadImgurl(Map<String, Object> searchParams) ;
    
    /**
     * @author shengzhoutao
     * @description: 根据交易流水号查询影像文件
     * @date 2015-01-07 16:22:50
     * @param searchUploadImgurl
     * @return
     */
    public List<ImgurlDto> searchImgurlBydealCode(Map<String, Object> searchParams) ;
    
    /**
     * @author zhiqiang
     * @description:查询对象该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param searchParams
     * @return
     */
    public List<ImgurlDto> searchImgurl(Map<String,Object> searchParams);

    /**
     * @author zhiqiang
     * @description:查询对象该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param id
     * @return
     */
    public ImgurlDto findImgurlByPrimaryKey(String id);
    
    /**
     * @author zhiqiang
     * @description: 新增对象该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param paramMap
     * @return
     */
    public int insertImgurl(Map<String, Object> paramMap);
    
    /**
     * @author zhiqiang
     * @description: 更新对象该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param paramMap
     */
    public void updateImgurl(Map<String, Object> paramMap);
    
    
    /**
     * @author zhiqiang
     * @description: 更新对象该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param paramMap
     */
    public void updateImgurlFileUploadStatus(Map<String, Object> paramMap);
     
    /**
     * @author zhiqiang
     * @description: 按主键删除该表进件和合同共用此表，若是进件场景，则贷款编号字段存储进件信息主件，合同号存储进件编号
     * @date 2015-01-07 16:22:50
     * @param ids
     * @return
     */ 
    public void deleteImgurlByPrimaryKey(Map<String, Object> paramMap);
    
    public List<ImgurlDto> getPendingTransImgurl(Map<String, Object> paramMap);
    
    public List<PlcImagesDto> findPlcImagesByCpcAndDealType(Map<String, Object> paramMap);
    
    public List<PlcImagesDto> findPlcImagesByDealCodeContractNo(Map<String, Object> paramMap);
    
    public List<ImgurlDto> searchImgurlByAttachNames(Map<String, Object> paramMap);
    
    public Long getImgurlRows(Map<String, Object> searchParams);
    
	public void insertImgurlByBatch(List<TCMmImgurlDTO> imgurlDtoList);

}
